import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const modules = {}
const require_module = require.context('./modules', false, /.js$/)
require_module.keys().forEach(file_name => {
    modules[file_name.slice(2, -3)] = require_module(file_name).default
})

export default new Vuex.Store({
    modules: modules,
    strict: process.env.NODE_ENV !== 'production',
    state: {
        routers: [],
        currentAdmin: JSON.parse(window.localStorage.getItem('user'))
    },
    mutations: { // 唯一可以改变state值的一个方法，但是它是一个同步执行的 用于变更store中的数据，易于开发
        INIT_ADMIN(state, admin) {
            state.currentAdmin = admin
        },
        initRoutes(state, data) {
            state.routes = data
        }
    },
    actions: { // 异步执行

    }
})
